package com.landscope.issue.controller.api.dto;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;

/**
 * @author qzp
 * @version v1.0
 * @date 2021/8/2 17:35
 **/
@Data
public class MainIndexDto {
    @ApiModelProperty("监测点分布列表")
    private MonitoringSite monitoringSite; // 监测点分布
    @ApiModelProperty("简介")
    private String des; // 简介
    @ApiModelProperty("台站地图列表及预警列表")
    private StaMap map; // 台站地图
    @ApiModelProperty("台站实时数据列表")
    private List<StaListDataDto> staList; // 台站实时数据列表
    @ApiModelProperty("监测变化数据")
    private MonitorDataDto monitor; // 监测变化
    @ApiModelProperty("灾害风险指数,low-低风险,middle-中风险，high-高风险")
    private String disasterExponential; // 灾害风险指数
    @ApiModelProperty("灾害风险简报")
    private String disasterReport; // 灾害风险简报
    @ApiModelProperty("核心监测数据")
    private CoreMonitorDataDto coreMonitorData; // 核心检测数据
    @ApiModelProperty("系统监测数据")
    private ServicemDataDto servicemData; // 系统监测数据

    @ApiModelProperty("软件页面标题")
    private String title;
    @ApiModelProperty("用户名称")
    private String userName;

    /**
     * 台站地图数据
     * @throws
     * @author 瞿子朋
     * @date 2021/8/3 9:30
     * @version v1.0
     **/
    @Data
    public static class MonitoringSite{
        @ApiModelProperty("监测点分布底图，如果采用地图则忽略")
        private String imageUrl;
        @ApiModelProperty("项目列表")
        private List<ProjectListDto> list;
    }

    @Data
    public static class StaMap{
        @ApiModelProperty("台站分布地图底图")
        private String imageUrl;
        @ApiModelProperty("项目名称")
        private String name;
        @ApiModelProperty("项目编码")
        private String code;
        @ApiModelProperty("台站列表")
        private List<StaListDto> list;
        @ApiModelProperty("预警列表，[{\"alarmName\": \"名称\",\"jdzb\": \"温度\",\"alarmMax\": \"30\",\"alarmDj\": \"I\",\"content\": \"一级预警 2023-04-27 17:51:34 名称 温度30\",\"createdTime\": \"2023-04-27 17:51:34\"}]")
        private List<WarningDto> warningList;
    }
}
